// 重写setItem事件，当使用setItem的时候，触发，window.dispatchEvent派发事件
const dispatchEventStroage = function (key, val) {
    const signSetItem = localStorage.setItem; // 保存原始 setItem 方法
    localStorage.setItem = function (key, val) { // 重写 setItem 方法
        let setEvent = new Event('setItemEvent'); // 创建自定义事件
        setEvent.key = key; // 自定义属性：key
        setEvent.newValue = val; // 自定义属性：newValue
        window.dispatchEvent(setEvent); // 触发事件
        signSetItem.apply(this, arguments); // 调用原始的 setItem
    };
};

export default dispatchEventStroage
